通过 Postman 上传文件和提交JSON 您所在的位置:网站首页 postman 上传文件 通过 Postman 上传文件和提交JSON

通过 Postman 上传文件和提交JSON

2023-03-11 15:47| 来源: 网络整理| 查看: 265

概述

Postman 是一个流行的 API 平台,它优化了 API 开发生命周期的各个步骤。 Postman 无需编写任何代码即可用于测试我们的 API。 我们可以使用独立应用程序或浏览器扩展。

在本教程中,我们将了解如何在使用 Postman 时上传文件和 JSON 数据。

配置

让我们创建一个简单的 Spring Boot 项目,该项目提供上传文件的接口。

maven依赖 org.springframework.boot spring-boot-starter-web 模型

定义一个简单的入参对象:

@Builder @Data @AllArgsConstructor @NoArgsConstructor public class JsonRequest { Integer id; String name; } 接口

定义一个支持文件上传的接口:

@PostMapping("/upload-file") public ResponseEntity handleFileUpload(@RequestParam("file") MultipartFile file){ return ResponseEntity.ok().body("成功接收文件"); }

在方法 handleFileUpload() 中,MultipartFile 作为入参,返回200 状态码,字符串作为body的相应。 简单点,不保存或处理文件流。

MultipartFile 由 Spring-Web 提供,它代表一个上传的文件。 然后,该文件存储在内存中或临时存储在磁盘上,随后在请求处理完成后将其清除。

另外,创建一个处理 JSON内容的接口:

@PostMapping("/upload-json") public ResponseEntity handleJsonInput(@RequestBody JsonRequest json){ return ResponseEntity.ok().body(json.getId()+json.getName()); }

在handleJsonInput方法,用JsonRequest 作为入参,也就是之前定义的model对象。 该方法在响应中返回 200 HTTP 状态码,其中包含输入详细信息 id 和名称。

我们使用了注释 @RequestBody 将入参反序列化到 JsonRequest 对象中。 通过这种方式,我们看到了 JSON 的简单处理来验证输入。

上传数据

我们已经写好了接口,现在让我们json传输和文件上传的两种方式。

将 JSON 上传到 Postman

JSON 是其中一个接口的接受格式, 我们将按照以下步骤将数据传输到接口。

postman的默认方法设置为 GET。 因此,一旦我们添加了 localhost URL,我们需要选择 POST 作为方法,选择raw,选择json作为入参格式,把json内容粘贴上,点击Send: image.png

正如我们在底部看到的那样,我们收到了 200 状态码作为响应。 此外,输入中的 id 和名称会在响应正文中返回,以确认 JSON 在接口中正确处理。

通过Postman来上传文件

这里我们随便上传一个文件,因为接口并没有做任何格式约束

把url贴在postman,选择post方法,单击 Body 选项卡,然后选择 form-data。 在键值对的第一行,让我们单击键字段右上角的下拉菜单,然后选择 File 作为输入,同时,我们需要在 key 列中添加作为端点的 @RequestParam 的文本文件,并浏览 value 列的所需文件。

最后,让我们点击Send: image.png

当我们单击Send时,我们会得到一个 200 HTTP 状态代码,其中包含在接口中定义的文本内容。 这意味着我们的文件已成功上传到接口,没有错误或异常。

注意:如果上传的文件超过1M,会超过spring boot默认配置的最大文件限制,这时需要在application.yaml中配置最大文件限制和单次请求限制

spring: servlet: multipart: max-file-size: 100MB max-request-size: 1000MB 结论

在本文中,我们构建了一个简单的 Spring Boot 应用程序,并研究了两种通过 Postman 向暴露的接口提供数据的不同方式。

本文完结,感谢点赞、评论和转发



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有